package com.cmo.common.controller.login;

import java.util.HashMap;
import java.util.Map;

import com.cmo.common.model.Triage;
import com.cmo.common.utils.Constant;
import com.cmo.common.utils.Shared;
import com.cmo.common.utils.ToolString;
import com.jfinal.core.Controller;
import com.jfinal.plugin.activerecord.Record;


public class LoginController extends Controller {

	Triage service=new Triage();
	Shared shared=new Shared();
	/**
	 * 
	* @Title: index 
	* @Description: 进入登陆页面
	* @param     设定文件 
	* @return void    返回类型 
	* @throws
	 */
	public void index(){
		render(Constant.loginClientRealPath);
	}
	
	/**
	 * 
	* @Title: login 
	* @Description:登陆方法
	* @param     设定文件 
	* @return void    返回类型 
	* @throws
	 */
	public void login(){
		Map<String, Object> map=new HashMap<String, Object>();
		//登陆密码password
		String password=getPara("password");
		if(ToolString.isBlank(password)){
			map.put("return_msg","密码不能为空,请输入密码");
			map.put("return_code", "fail");
			renderJson(map);
			return;
		}
		//获取本机客户端本机ip
		String ip=shared.getIpAddr(getRequest());
		//判断本机ip是否在分诊台中配置
		Record record=service.findByIP(ip);
		if(null==record){
			map.put("return_msg","当前IP"+ip+"没有在分诊台中配置,请先配置");
			map.put("return_code", "fail");
			renderJson(map);
			return;
		}
		//登陆
		Record record2=service.login(ip, password);
		if(null==record2){
			map.put("return_msg","登陆失败,密码错误,请重新输入");
			map.put("return_code", "fail");
			renderJson(map);
			return;
		}else{
			//保存到session
			getSession().setAttribute("ip", ip);
			setSessionAttr("login", record2);
			map.put("return_msg","登陆成功");
			map.put("return_code","success");
			renderJson(map);
		}
		renderJson(map);
	}
}
